JavaScript verfügt mittlerweile über ein großes Ökosystem und ist eine weitverbreitete Sprache. Wenn ich nun von einer anderen Sprache wie C# oder Java komme, finde ich dann auch vertraute Konzepte in JavaScript vor?
Yara Mayer: Ja, definitiv. Ich glaube, nicht so viele, weil C# und Java beides typisierte Sprachen sind. Aber sowas wie Funktionen, Klassen (bis zu einem gewissen Punkt), Argumente innerhalb von Funktionen, Variablen, Datentypen – das ist alles ähnlich. Aber natürlich mit dem Unterschied, dass JavaScript sehr stark funktional ist, OOP und auch gescriptet gemacht werden kann. Aber es ist nicht typisiert, das macht einen großen Unterschied. Doch wenn man über TypeScript redet, dann ist es sehr ähnlich zu Java oder C# – vor allem C#.
JavaScript wurde ziemlich lange belächelt und nicht als eine richtige Programmiersprache anerkannt. Diese Meinung scheint sich nun geändert zu haben. Kannst du das bestätigen und woran liegt das?
Yara Mayer: Dass es sich geändert hat, kann ich zum Teil bestätigen. Ich glaube, die meisten Leute – selbst die, die hauptsächlich mit JavaScript arbeiten – halten JavaScript immer noch für keine schöne Sprache. Für eine richtige Sprache allerdings schon, weil sie merken, dass man mit damit alles machen kann. Sie ist mittlerweile sehr verbreitet; man kann sie in allen Browsern benutzen. Es ist auch die einzige Sprache, die man in Browsern benutzen kann – außer WebAssembly, aber das zählt nicht wirklich. Man kann sie in Raspberry Pis und Arduinos nutzen – sie ist mittlerweile überall und wird ein bisschen ernster genommen.
Was sind die wichtigsten Grundkonzepte für den Einstieg in JavaScript?
Yara Mayer: Definitiv Funktionen und wie das Prototyping funktioniert, das muss man unbedingt verstehen. Außerdem Objekte, die hängen damit sehr stark zusammen. Ansonsten noch, wie Funktionen im Sinne von First-Class Citizens funktionieren – dass man die hin- und hergeben und wieder benutzen kann. Und Scoping – das sind für mich die wichtigsten.
Neben ECMAScript, dem Sprachkern von JavaScript, gibt es noch TypeScript. Was würdest du Umsteigern von anderen Sprachen empfehlen?
Yara Mayer: Immer JavaScript. JavaScript ist die Sprache; TypeScript ist ein Superset von JavaScript, das heißt, es ist zum Teil JavaScript mit anderer Syntax , andererseits fügt es die Typisierung hinzu und auch mehr Advanced Features, aber es funktioniert immer noch wie JavaScript. Es wird auch letztendlich in JavaScript umgeschrieben („transpiled“ oder „compiled“, je nachdem, wie man das lieber hat). Aber im Browser läuft dann JavaScript am Ende.
Was denkst du über Frameworks? Viele Entwickler steigen gar nicht mehr mit JavaScript ein, sondern sofort mit Frameworks. Findest du, dass das eine gute Idee ist?
Yara Mayer: Auf keinen Fall. Das ist, als würde ich jetzt mit Java direkt auf Spring Boot einsteigen, ohne Java überhaupt zu verstehen. Wenn man die Sprache nicht versteht, dann wird man in dem Framework bis zu einem gewissen Punkt klar kommen; aber man hat den Kern der Arbeit nicht verstanden und wird mit Bugs, Fehlern und so weiter sehr schwer umgehen können.
Gibt es denn ein Framework, das du für den Umstieg am geeignetsten hältst?
Yara Mayer: Je nachdem, woher man kommt. Ich denke, wenn man aus MVC kommt, also aus irgendeinem Framework, das MVC macht, dann Angular. Angular folgt diesem Konzept, zumindest so ähnlich. Ansonsten React, weil das sehr weitverbreitet ist. Jetzt langsam auch View, weil es im Moment sehr heiß ist und in der Zukunft noch größer werden wird, bisher aber noch nicht so weitverbreitet ist wie React oder Angular.
Gibt es noch einen Tipp, den du Ein- und Umsteigern mit auf den Weg geben möchtest?
Yara Mayer: Ja. Sich mit der Sprache auseinandersetzen. Definitiv versuchen, all diese Gotcha-Features oder „It’s not a bug, it’s a feature!“ zu verstehen. Wirklich die Sprache kennenlernen und versuchen, dem Gedanken aus dem Weg zu gehen, dass JavaScript keine gute oder schöne Sprache ist; das hilft nicht. Man muss es einfach nur verstehen, man muss wissen, wo die Löcher und Probleme sind, und dann damit umgehen.
Schön! Vielen Dank, dass du heute bei uns warst und noch viel Spaß hier!
Das Interview führte Julia Martin.